xend: pass-through: device state in xenstore may be null
authorKeir Fraser <keir.fraser@citrix.com>
Tue, 28 Jul 2009 15:32:26 +0000 (16:32 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Tue, 28 Jul 2009 15:32:26 +0000 (16:32 +0100)
Signed-off-by: Tom Rotenberg <tom.rotenberg@gmail.com>
tools/python/xen/xend/server/pciif.py

index a4c976b7bfe82f62ded331fcff457ec120e10a07..823a77c40ff0a07a51d95e5133e20dd1c58a0cdf 100644 (file)
@@ -489,7 +489,11 @@ class PciController(DevController):
         num_devs = int(self.readBackend(devid, 'num_devs'))
         new_num_devs = 0
         for i in range(num_devs):
-            state = int(self.readBackend(devid, 'state-%i' % i))
+            try:
+                state = int(self.readBackend(devid, 'state-%i' % i))
+            except:
+                state = xenbusState['Unknown']
+
             if state == xenbusState['Closing']:
                 # Detach I/O resources.
                 pci_dev = parse_pci_name(self.readBackend(devid, 'dev-%i' % i))